Copending U.S. Ser. No. 10/107,275 filed on Mar. 26, 2002 discloses subject matter related to that disclosed herein, and is incorporated herein by reference. Symbols Ck, sk, Ψ and r, as used in incorporated U.S. Ser. No. 10/107,275, correspond respectively to Sk, bk, H and y as used herein.
FIG. 1 diagrammatically illustrates an example of a conventional CDMA transmitter apparatus. As shown in FIG. 1, the communication data is first applied to a channel encoding section 11 whose output is then fed to a channel interleaver 12. The output of the channel interleaver 12 is input to a modulator 13, for example a QPSK modulator or an M-QAM modulator. The modulator 13 outputs communication symbols to a MIMO/ST (multiple input-multiple output/space-time) coding section 14. The output of the MIMO/ST coding section 14 is input to a multi-antenna spreading section 15 which drives a plurality of transmit antennas. Examples of space-time (ST) coding at 14 include STTD, double STTD and OTD coding.
FIG. 2 illustrates examples of the MIMO/ST coding section 14 and spreading section 15 of FIG. 1 in more detail. As show in FIG. 2, the MIMO/ST coding section 14 includes a plurality of MIMO transformers which perform MIMO transforms on communication symbols received from the modulator 13. Each MIMO transformer receives symbols associated with one of K specific sources. The K sources can be associated with K different users, or can be associated with a single user, or one or more groups of the sources can be associated with one or more respective users while the rest of the sources are individually associated with other users. Assuming P transmit antennas, each MIMO transformer produces P outputs, and all KP outputs are applied to the multi-antenna spreading section 15. For each of the P outputs provided by one of the K MIMO transformers, the multi-antenna spreading section 15 applies one of K spreading codes to those P outputs. The signals that result from application of the spreading codes are then combined by P combiners as shown for transmission on the P transmit antennas.
FIG. 3 diagrammatically illustrates an exemplary portion of a conventional CDMA receiver which can receive the signals transmitted by the conventional transmitter of FIGS. 1 and 2. As shown in FIG. 3, signals received by a plurality of antennas are sampled at the chip rate (sampling could also be done above the chip rate). With NC chips per symbol, and a symbol detection window size of N symbols, the sampling section 32 of FIG. 3 collects a total of NC×N chips per detection window, as illustrated at 31 and 33 in FIG. 3. The received signal y of FIG. 3 can be expressed as follows:
                              y          _                =                                            ∑                              k                =                1                            K                        ⁢                                                            ρ                  k                                            ⁢                              H                k                            ⁢                              S                k                            ⁢                                                b                  _                                k                                              +                      n            _                                              (        1        )            or, in matrix form:
                              y          _                =                  [                                                                                          y                    1                                    ⁡                                      (                    0                    )                                                                                                                                            y                    2                                    ⁡                                      (                    0                    )                                                                                                      ⋮                                                                                                          y                    Q                                    ⁡                                      (                    0                    )                                                                                                      ⋮                                                                                                          y                    1                                    ⁡                                      (                                                                                            N                          c                                                ⁢                        N                                            -                      1                                        )                                                                                                                                            y                    2                                    ⁡                                      (                                                                                            N                          c                                                ⁢                        N                                            -                      1                                        )                                                                                                      ⋮                                                                                                          y                    Q                                    ⁡                                      (                                                                                            N                          c                                                ⁢                        N                                            -                      1                                        )                                                                                ]                                    (        2        )            where Q is the number of receive antennas, and Q>P. In equation 1 above, the matrix Hk represents the transmission channel associated with the kth source (which is known, e.g., from conventional channel estimation procedures), ρk is the power of the kth source, Sk is the spreading code matrix for the kth source, bk is the data symbol vector for the kth source and n is white noise. The dimension of the received signal vector y is NcNQ×1, the channel matrix Hk is a NcNQ×NcNP matrix, the spreading code matrix Sk is a NcNP×NP matrix, and the vector bk has a dimension of NP×1.
The data symbol vector bk can be written in matrix form as follows:
                                          b            _                    k                =                  [                                                                                          b                                          k                      ,                      1                                                        ⁡                                      (                    0                    )                                                                                                                                            b                                          k                      ,                      2                                                        ⁡                                      (                    0                    )                                                                                                      ⋮                                                                                                          b                                          k                      -                      P                                                        ⁡                                      (                    0                    )                                                                                                      ⋮                                                                                                          b                                          k                      ,                      1                                                        ⁡                                      (                                          N                      -                      1                                        )                                                                                                                                            b                                          k                      ,                      2                                                        ⁡                                      (                                          N                      -                      1                                        )                                                                                                      ⋮                                                                                                          b                                          k                      ,                      P                                                        ⁡                                      (                                          N                      -                      1                                        )                                                                                ]                                    (        3        )            where k is the index in equation 1 for the K sources of FIG. 1, P is the number of transmit antennas, and 0 to N−1 represent the N symbols in the symbol detection window. Rewriting a portion of equation 1 as follows:√{square root over (ρk)}HkSk=Ak  (4)then equation 1 can be further rewritten as follows:
                              y          _                =                  [                                                                      A                  1                                                            ⋯                                                                                                                                A                        K                                            ]                                        ⁡                                          [                                                                                                                                                                  b                                _                                                            1                                                                                                                                                            ⋮                                                                                                                                                                                              b                                _                                                            K                                                                                                                          ]                                                        +                                      n                    _                                                                                                          (        5        )            Equation 5 above can in turn be rewritten in even more generalized format as follows:y=ab+n  (6)
The goal is to solve for the vector b. One way to do so is conventional multi-user detection with the linear zero forcing (LZF) solution (see also FIG. 4) given by:z=FMZy=(aHa)−1aHy=b+(aHa)−1aHn  (7)wherein z has a vector format as follows:
                              z          _                =                  [                                                                                          z                    _                                    1                                                                                    ⋮                                                                                                          z                    _                                    K                                                              ]                                    (        8        )            and wherein the components of z have the following format
                                          z            _                    k                =                  [                                                                                          z                                          k                      ,                      1                                                        ⁡                                      (                    0                    )                                                                                                                                            z                                          k                      ,                      2                                                        ⁡                                      (                    0                    )                                                                                                      ⋮                                                                                                          z                                          k                      ,                      P                                                        ⁡                                      (                    0                    )                                                                                                      ⋮                                                                                                          z                                          k                      ,                      1                                                        ⁡                                      (                                          N                      -                      1                                        )                                                                                                                                            Z                                          k                      ,                      2                                                        ⁡                                      (                                          N                      -                      1                                        )                                                                                                      ⋮                                                                                                          Z                                          k                      ,                      P                                                        ⁡                                      (                                          N                      -                      1                                        )                                                                                ]                                    (        9        )            and wherein
            [                                                                  z                                  k                  ,                  1                                            ⁡                              (                0                )                                                                                                        z                                  k                  ,                  2                                            ⁡                              (                0                )                                                                          ⋮                                                                              z                                  k                  ,                  P                                            ⁡                              (                0                )                                                        ]        ≡                            z          _                k            ⁡              (        0        )              ,            [                                                                  z                                  k                  ,                  1                                            ⁡                              (                1                )                                                                                                        z                                  k                  ,                  2                                            ⁡                              (                1                )                                                                          ⋮                                                                              z                                  k                  ,                  P                                            ⁡                              (                1                )                                                        ]        ≡                            z          _                k            ⁡              (        1        )              ,      etc    .    ,so equation 9 can also be written as
                                          z            _                    k                =                  [                                                                                                                z                      _                                        k                                    ⁡                                      (                    0                    )                                                                                                                                                                  z                      _                                        k                                    ⁡                                      (                    1                    )                                                                                                      ⋮                                                                                                                                z                      _                                        k                                    ⁡                                      (                                          N                      -                      1                                        )                                                                                ]                                    (        10        )            
Multiplying through equation 6 by aH gives:aHy=aHab+aHn  (11)The superscript “H” herein designates the conjugate and transpose operation. Neglecting the noise in equation 11 gives:aHy=aHab  (12)Therefore, an estimate, {circumflex over (b)} of the vector b is given by:
                                          b            ^                    _                =                                                            (                                                      a                    H                                    ⁢                  a                                )                                            -                1                                      ⁢                          a              H                        ⁢                          y              _                                =                      [                                                                                                                              b                        ^                                            _                                        1                                                                                                ⋮                                                                                                                                                b                        ^                                            _                                        K                                                                        ]                                              (        13        )            This estimate {circumflex over (b)} represents the solution as:{circumflex over (b)}=z; {circumflex over (b)}k=zk; and {circumflex over (b)}k(n)=zk(n)  (14)
for k=1, . . . K and n=0, . . . N−1
For downlink scenarios, the channels experienced by all the sources from the base station to a mobile unit are common. That is, Hk=H for k=1, . . . , K. In this case, chip equalization techniques can be used.
For conventional chip equalization approaches, the following vector can be defined:
                              x          _                =                              ∑                          k              =              1                        K                    ⁢                                                    ρ                k                                      ⁢                          S              k                        ⁢                                          b                _                            k                                                          (        15        )            and, substituting into equation 1:y=Hx+n  (16)
Conventional chip equalization techniques can be used to equalize for the channel H in equation 16. Applying the linear zero forcing technique to equation 16 yieldsFcZy=(HHH)−1HHy=x+noise  (17)
The zero-forcing, chip equalization operation of equation 17 above produces the output 51 in the FIG. 5 example of a conventional chip equalizer with linear zero forcing. From the output 51 in FIG. 5, the components of the vector z shown above in equation 8 can be produced by applying the appropriate despreading matrices to the output 51. Thus, for k equal 1, 2, . . . K,zk=SkHx+noise  (18)
Using chip equalization and linear zero forcing, the components of the vector z are given byzk=√{square root over (ρ)}kbk+noise  (19)
Although zero-forcing criterion completely eliminates the interference among different sources, it results in excessive noise enhancement. A better criterion is minimum mean squared error (MMSE) since it optimally trades off noise enhancement and residual interference.
FIG. 6 diagrammatically illustrates an exemplary conventional multi-user detection arrangement utilizing the linear minimum mean squared error (LMMSE) solution. The background for the technique of FIG. 6 is demonstrated by the following equations 20-24. The expected values for the vectors b and n above are given by:E[bbH]=εI  (20)E[nnH]=σ2I  (21)The LMMSE solution for multi-user detection is the function FMM which minimizes the expression:FMMminE∥FMMy−b∥2  (22)The desired function FMM is
                              F          MM                =                                            (                                                                    a                    H                                    ⁢                  a                                +                                                                            σ                      2                                        ɛ                                    ⁢                  I                                            )                                      -              1                                ⁢                      a            H                                              (        23        )            and this function FMM can be applied to the received signal to obtain the desired vector z as follows:z=FMMy  (24)
The LMMSE solution for chip equalization is given by:
                              F          CM                =                                            (                                                                    H                    H                                    ⁢                  H                                +                                                                            σ                      2                                        ɛ                                    ⁢                  I                                            )                                      -              1                                ⁢                      H            H                                              (        25        )            Applying the function FCM to the received signal, as illustrated in the conventional LMMSE chip equalizer example of FIG. 7, gives:FCMy=FCMHx+FCMn  (26)
It is known in the art to apply iterative (i.e., successive or decision feedback) interference cancellation techniques in conjunction with multi-user detection or chip equalization. Iterative techniques provide improved interference cancellation, but require disadvantageously complex computations when applied to large matrices such as FCZ, and FCM, FMZ and FMM above. This is because of the large number (NKP) of iterations required.
It is therefore desirable to provide for iterative interference cancellation while avoiding complex matrix computations such as described above. The present invention advantageously isolates blocks of a conventional chip equalizer output, and applies interference rejection techniques to the isolated blocks to improve the symbol estimation at the receiver. The present invention also advantageously isolates blocks of a conventional multi-user detector output, and applies interference rejection techniques to the isolated blocks to improve the symbol estimation at the receiver. The block isolation advantageously reduces the complexity of the matrix calculations in the interference rejection.